package com.erp.entity.purchase;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author :qinya
 * @PackageName:com.erp.entity.purchase
 * @ClassName: Inquiry
 * @Description: 询价单
 * @date : 2025/6/30,8:26
 */
public class Inquiry {

    private Integer inquiryId;//询价单主键
    private Integer companyId;//公司Id
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date inquiryDate;//单据日期
    private String inquiryCode;//询价单编号
    private Integer salePersonId;//业务员id
    private Integer providerId;//供应商Id
    private Integer invoiceMakerId;//制单人Id
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date invoiceCreateDate;//制单时间
    private Integer auditorId;//审核人id
    private BigDecimal totalAmount;//总计金额
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date validDateStart;//生效日期
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date validDateEnd;//失效日期
    private Integer invoiceState;//单据状态
    private String remark;//备注
    private Integer discountRate;//折扣率
    private Integer deleted;//是否删除

    private List<InquiryDetail> inquiryDetailList;//询价单明细

    // 冗余字段
    private String providerName;// 供应商名称
    private String providerAddress;// 供应商地址


    public void setDiscountRate(Integer discountRate) {
        this.discountRate = discountRate;
    }

    public List<InquiryDetail> getInquiryDetailList() {
        return inquiryDetailList;
    }

    public void setInquiryDetailList(List<InquiryDetail> inquiryDetailList) {
        this.inquiryDetailList = inquiryDetailList;
    }

    public Integer getInquiryId() {
        return inquiryId;
    }

    public void setInquiryId(Integer inquiryId) {
        this.inquiryId = inquiryId;
    }

    public Integer getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }

    public Integer getSalePersonId() {
        return salePersonId;
    }

    public void setSalePersonId(Integer salePersonId) {
        this.salePersonId = salePersonId;
    }

    public Date getInquiryDate() {
        return inquiryDate;
    }

    public void setInquiryDate(Date inquiryDate) {
        this.inquiryDate = inquiryDate;
    }

    public String getInquiryCode() {
        return inquiryCode;
    }

    public void setInquiryCode(String inquiryCode) {
        this.inquiryCode = inquiryCode;
    }

    public Integer getProviderId() {
        return providerId;
    }

    public void setProviderId(Integer providerId) {
        this.providerId = providerId;
    }

    public Integer getInvoiceMakerId() {
        return invoiceMakerId;
    }

    public void setInvoiceMakerId(Integer invoiceMakerId) {
        this.invoiceMakerId = invoiceMakerId;
    }

    public Date getInvoiceCreateDate() {
        return invoiceCreateDate;
    }

    public void setInvoiceCreateDate(Date invoiceCreateDate) {
        this.invoiceCreateDate = invoiceCreateDate;
    }

    public Integer getAuditorId() {
        return auditorId;
    }

    public void setAuditorId(Integer auditorId) {
        this.auditorId = auditorId;
    }

    public BigDecimal getTotalAmount() {
        return totalAmount;
    }

    public void setTotalAmount(BigDecimal totalAmount) {
        this.totalAmount = totalAmount;
    }

    public Date getValidDateStart() {
        return validDateStart;
    }

    public void setValidDateStart(Date validDateStart) {
        this.validDateStart = validDateStart;
    }

    public Date getValidDateEnd() {
        return validDateEnd;
    }

    public void setValidDateEnd(Date validDateEnd) {
        this.validDateEnd = validDateEnd;
    }

    public Integer getInvoiceState() {
        return invoiceState;
    }

    public void setInvoiceState(Integer invoiceState) {
        this.invoiceState = invoiceState;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public int getDiscountRate() {
        return discountRate;
    }

    public void setDiscountRate(int discountRate) {
        this.discountRate = discountRate;
    }

    public Integer getDeleted() {
        return deleted;
    }

    public void setDeleted(Integer deleted) {
        this.deleted = deleted;
    }

    public String getProviderName() {
        return providerName;
    }

    public void setProviderName(String providerName) {
        this.providerName = providerName;
    }

    public String getProviderAddress() {
        return providerAddress;
    }

    public void setProviderAddress(String providerAddress) {
        this.providerAddress = providerAddress;
    }
}
